package com.itheima.controller;






import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.lang.reflect.Method;

/*
* 抽取Servlet
* */
public class BaseServlet extends HttpServlet {
//    public CompanyService companyService;
//    public DeptService deptService;
//    public CatalogService catalogService;
//    public CourseService courseService;
//    public QuestionService questionService;
//    public UserService userService;
//    public QusetionItemService qusetionItemService;
//    public ModuleService moduleService;
//    public RoleService roleService;
    @Override
    public void init() throws ServletException {
//      companyService=new ComServiceImpl();
//        deptService=new DeptServiceImpl();
//        courseService=new CourseServiceImp();
//        catalogService=new CataServiceImpl();
//        questionService=new QuestuonServiceImp();
//        userService=new UserServiceImpl();
//        qusetionItemService=new QusetionItemServiceImp();
//        moduleService=new ModuleServletImp();
//        roleService=new RoleServiceImp();



    }

    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //1、获取URI
        String uri = req.getRequestURI();
        String methodName = uri.substring(uri.lastIndexOf("/") + 1);
        //获取方法对象
        try {
            Method method=this.getClass().getDeclaredMethod(methodName,HttpServletRequest.class,HttpServletResponse.class);
            method.setAccessible(true);
            method.invoke(this,req,resp);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
